#ifndef _UFO_DATA_LIST_H_
#define _UFO_DATA_LIST_H_

#include "handle.h"

DECLARE_HANDLE(UFO_List);
DECLARE_HANDLE(UFO_List_Iteartor);

UFO_List ufoListCreate(int elementSize);

int ufoListPushBack(UFO_List list, void* element);

int ufoListGetSize(UFO_List list);

UFO_List_Iteartor ufoListBegin(UFO_List list);

UFO_List_Iteartor ufoListIteartorForward(UFO_List_Iteartor iteartor);

UFO_List_Iteartor ufoListIteartorBackward(UFO_List_Iteartor iteartor);

void* ufoListGetElement(UFO_List_Iteartor iteartor);

#endif